import axios from 'axios'
import { BASE_URL, TIMEOUT } from './config'

class ZJRequest {
	constructor(baseURL, timeout) {
		this.instance = axios.create({
			baseURL,
			timeout
		})

		this.instance.interceptors.response.use(
			res => {
				return res.data
			},
			err => {
				return err
			}
		)
	}

	request(config) {
		return this.instance.request(config)
	}

	get(config) {
		return this.request({ ...config, method: 'GET' })
	}

	post(config) {
		return this.request({ ...config, method: 'POST' })
	}
}

export default new ZJRequest(BASE_URL, TIMEOUT)
